nobase_dist_js_DATA = \
gdm/batch.js \
- gdm/consoleKit.js \
gdm/fingerprint.js \
gdm/loginDialog.js \
gdm/powerMenu.js \
- gdm/systemd.js \
gdm/util.js \
extensionPrefs/main.js \
misc/config.js \
+ misc/consoleKit.js \
misc/extensionUtils.js \
misc/fileUtils.js \
misc/gnomeSession.js \
misc/jsParse.js \
misc/modemManager.js \
misc/params.js \
+ misc/systemd.js \
misc/util.js \
perf/core.js \
ui/altTab.js \
+++ /dev/null
-// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
-
-const Gio = imports.gi.Gio;
-
-const ConsoleKitManagerIface = <interface name='org.freedesktop.ConsoleKit.Manager'>
-<method name='CanRestart'>
- <arg type='b' direction='out'/>
-</method>
-<method name='CanStop'>
- <arg type='b' direction='out'/>
-</method>
-<method name='Restart' />
-<method name='Stop' />
-</interface>;
-
-const ConsoleKitProxy = Gio.DBusProxy.makeProxyWrapper(ConsoleKitManagerIface);
-
-function ConsoleKitManager() {
- return new ConsoleKitProxy(Gio.DBus.system,
- 'org.freedesktop.ConsoleKit',
- '/org/freedesktop/ConsoleKit/Manager');
-};
const Lang = imports.lang;
const UPowerGlib = imports.gi.UPowerGlib;
-const ConsoleKit = imports.gdm.consoleKit;
-const Systemd = imports.gdm.systemd;
+const ConsoleKit = imports.misc.consoleKit;
+const Systemd = imports.misc.systemd;
const PanelMenu = imports.ui.panelMenu;
const PopupMenu = imports.ui.popupMenu;
+++ /dev/null
-// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
-
-const GLib = imports.gi.GLib;
-const Gio = imports.gi.Gio;
-
-const SystemdLoginManagerIface = <interface name='org.freedesktop.login1.Manager'>
-<method name='PowerOff'>
- <arg type='b' direction='in'/>
-</method>
-<method name='Reboot'>
- <arg type='b' direction='in'/>
-</method>
-<method name='CanPowerOff'>
- <arg type='s' direction='out'/>
-</method>
-<method name='CanReboot'>
- <arg type='s' direction='out'/>
-</method>
-</interface>;
-
-const SystemdLoginManagerProxy = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
-
-function SystemdLoginManager() {
- return new SystemdLoginManagerProxy(Gio.DBus.system,
- 'org.freedesktop.login1',
- '/org/freedesktop/login1');
-};
-
-function haveSystemd() {
- return GLib.access("/sys/fs/cgroup/systemd", 0) >= 0;
-}
--- /dev/null
+// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
+
+const Gio = imports.gi.Gio;
+
+const ConsoleKitManagerIface = <interface name='org.freedesktop.ConsoleKit.Manager'>
+<method name='CanRestart'>
+ <arg type='b' direction='out'/>
+</method>
+<method name='CanStop'>
+ <arg type='b' direction='out'/>
+</method>
+<method name='Restart' />
+<method name='Stop' />
+<method name='GetCurrentSession'>
+ <arg type='o' direction='out' />
+</method>
+</interface>;
+
+const ConsoleKitSessionIface = <interface name='org.freedesktop.ConsoleKit.Session'>
+<method name='IsActive'>
+ <arg type='b' direction='out' />
+</method>
+<signal name='ActiveChanged'>
+ <arg type='b' direction='out' />
+</signal>
+<signal name='Lock' />
+<signal name='Unlock' />
+</interface>;
+
+const ConsoleKitSessionProxy = Gio.DBusProxy.makeProxyWrapper(ConsoleKitSessionIface);
+
+const ConsoleKitManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(ConsoleKitManagerIface);
+
+function ConsoleKitManager() {
+ var self = new Gio.DBusProxy({ g_connection: Gio.DBus.system,
+ g_interface_name: ConsoleKitManagerInfo.name,
+ g_interface_info: ConsoleKitManagerInfo,
+ g_name: 'org.freedesktop.ConsoleKit',
+ g_object_path: '/org/freedesktop/ConsoleKit/Manager',
+ g_flags: Gio.DBusProxyFlags.DO_NOT_LOAD_PROPERTIES });
+ self.init(null);
+
+ self.GetCurrentSessionRemote(function([session]) {
+ self.ckSession = new ConsoleKitSessionProxy(Gio.DBus.system, 'org.freedesktop.ConsoleKit', session);
+
+ self.ckSession.connectSignal('ActiveChanged', function(object, senderName, [isActive]) {
+ self.sessionActive = isActive;
+ });
+ self.ckSession.IsActiveRemote(function([isActive]) {
+ self.sessionActive = isActive;
+ });
+ });
+
+ return self;
+}
--- /dev/null
+// -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*-
+
+const GLib = imports.gi.GLib;
+const Gio = imports.gi.Gio;
+
+const SystemdLoginManagerIface = <interface name='org.freedesktop.login1.Manager'>
+<method name='PowerOff'>
+ <arg type='b' direction='in'/>
+</method>
+<method name='Reboot'>
+ <arg type='b' direction='in'/>
+</method>
+<method name='CanPowerOff'>
+ <arg type='s' direction='out'/>
+</method>
+<method name='CanReboot'>
+ <arg type='s' direction='out'/>
+</method>
+</interface>;
+
+const SystemdLoginSessionIface = <interface name='org.freedesktop.login1.Session'>
+<signal name='Lock' />
+<signal name='Unlock' />
+</interface>;
+
+const SystemdLoginManagerProxy = Gio.DBusProxy.makeProxyWrapper(SystemdLoginManagerIface);
+
+const SystemdLoginSessionProxy = Gio.DBusProxy.makeProxyWrapper(SystemdLoginSessionIface);
+
+function SystemdLoginManager() {
+ return new SystemdLoginManagerProxy(Gio.DBus.system,
+ 'org.freedesktop.login1',
+ '/org/freedesktop/login1');
+};
+
+function SystemdLoginSession(id) {
+ return new SystemdLoginSessionProxy(Gio.DBus.system,
+ 'org.freedesktop.login1',
+ '/org/freedesktop/login1/session/' + id);
+}
+
+function haveSystemd() {
+ return GLib.access("/sys/fs/cgroup/systemd", 0) >= 0;
+}
const GLib = imports.gi.GLib;
const Gio = imports.gi.Gio;
const Params = imports.misc.params;
-
const Shell = imports.gi.Shell;
+
+const ConsoleKit = imports.misc.consoleKit;
+const GnomeSession = imports.misc.gnomeSession;
const Main = imports.ui.main;
const ShellMountOperation = imports.ui.shellMountOperation;
-const GnomeSession = imports.misc.gnomeSession;
+const Systemd = imports.misc.systemd;
const GNOME_SESSION_AUTOMOUNT_INHIBIT = 16;
const AUTORUN_EXPIRE_TIMEOUT_SECS = 10;
-const ConsoleKitSessionIface = <interface name="org.freedesktop.ConsoleKit.Session">
-<method name="IsActive">
- <arg type="b" direction="out" />
-</method>
-<signal name="ActiveChanged">
- <arg type="b" direction="out" />
-</signal>
-</interface>;
-
-const ConsoleKitSessionProxy = Gio.DBusProxy.makeProxyWrapper(ConsoleKitSessionIface);
-
-const ConsoleKitManagerIface = <interface name="org.freedesktop.ConsoleKit.Manager">
-<method name="GetCurrentSession">
- <arg type="o" direction="out" />
-</method>
-</interface>;
-
-const ConsoleKitManagerInfo = Gio.DBusInterfaceInfo.new_for_xml(ConsoleKitManagerIface);
-
-function ConsoleKitManager() {
- var self = new Gio.DBusProxy({ g_connection: Gio.DBus.system,
- g_interface_name: ConsoleKitManagerInfo.name,
- g_interface_info: ConsoleKitManagerInfo,
- g_name: 'org.freedesktop.ConsoleKit',
- g_object_path: '/org/freedesktop/ConsoleKit/Manager',
- g_flags: (Gio.DBusProxyFlags.DO_NOT_AUTO_START |
- Gio.DBusProxyFlags.DO_NOT_LOAD_PROPERTIES) });
-
- self._updateSessionActive = function() {
- if (self.g_name_owner) {
- self.GetCurrentSessionRemote(function([session]) {
- self._ckSession = new ConsoleKitSessionProxy(Gio.DBus.system, 'org.freedesktop.ConsoleKit', session);
-
- self._ckSession.connectSignal('ActiveChanged', function(object, senderName, [isActive]) {
- self.sessionActive = isActive;
- });
- self._ckSession.IsActiveRemote(function([isActive]) {
- self.sessionActive = isActive;
- });
- });
- } else {
- self.sessionActive = true;
- }
- };
- self.connect('notify::g-name-owner',
- Lang.bind(self, self._updateSessionActive));
-
- self._updateSessionActive();
- self.init(null);
- return self;
-}
-
-function haveSystemd() {
- return GLib.access("/sys/fs/cgroup/systemd", 0) >= 0;
-}
-
const AutomountManager = new Lang.Class({
Name: 'AutomountManager',
Lang.bind(this, this._InhibitorsChanged));
this._inhibited = false;
- if (!haveSystemd())
- this.ckListener = new ConsoleKitManager();
+ if (!Systemd.haveSystemd())
+ this.ckListener = new ConsoleKit.ConsoleKitManager();
Main.screenShield.connect('lock-status-changed', Lang.bind(this, this._lockStatusChanged));
// right mechanism: either systemd if available or ConsoleKit
// as fallback.
- if (haveSystemd())
+ if (Systemd.haveSystemd())
return Shell.session_is_active_for_systemd();
return this.ckListener.sessionActive;